Fechar

@InProceedings{PintoFontGuerTerr:2016:FeVeAr,
               author = "Pinto, Arthur F. and Fontes, Nicolas Ribeiro and Guerra, Eduardo 
                         Martins and Terra, Ricardo",
          affiliation = "{Universidade Federal de Lavras (UFLA)} and {Instituto Nacional de 
                         Pesquisas Espaciais (INPE)} and {Instituto Nacional de Pesquisas 
                         Espaciais (INPE)} and {Universidade Federal de Lavras (UFLA)}",
                title = "ArchCI: uma ferramenta de verifica{\c{c}}{\~a}o arquitetural em 
                         integra{\c{c}}{\~a}o cont{\'{\i}}nua",
            booktitle = "Anais...",
                 year = "2016",
         organization = "Congresso Brasileiro de Software, 7. (CBSOFT)",
             abstract = "As software evolves, developers usually introduce deviations from 
                         the planned architecture, due to unawareness, conflicting 
                         requirements, technical difficulties, deadlines, etc. Although 
                         architectural compliance processes identify architectural 
                         violations, (i) these tools are underused and (ii) detected 
                         violations are rarely corrected. Therefore, this article 
                         introduces ArchCI, a tool that provides architectural compliance 
                         check as part of the Continuous Integration (CI) process. The tool 
                         relies on DCL as underlying conformance technique and Jenkins as 
                         the CI server. It implies that the architectural compliance 
                         process is triggered by every code integration, performing preset 
                         actions when violations are detected. Such actions range from 
                         sending a warning e-mail to forbid the integration to the 
                         repository. Also, this article reports case studies in a 
                         controlled and a real-world scenarios to demonstrate the 
                         applicability of the tool. RESUMO: No decorrer de um projeto de 
                         software, desenvolvedores normalmente introduzem desvios em 
                         rela{\c{c}}{\~a}o {\`a} arquitetura planejada, seja por novos 
                         requisitos, desconhecimento, dificuldades t{\'e}cnicas, prazos 
                         curtos, etc. Embora existam processos e ferramentas de 
                         conformidade arquitetural que identifiquem viola{\c{c}}{\~o}es, 
                         (i) essas ferramentas s{\~a}o subutilizadas e (ii) 
                         viola{\c{c}}{\~o}es detectadas s{\~a}o raramente corrigidas. 
                         Diante disso, este artigo implementa ArchCI, uma ferramenta que 
                         prov{\^e} a verifica{\c{c}}{\~a}o de conformidade arquitetural 
                         como parte do processo de Integra{\c{c}}{\~a}o Cont{\'{\i}}nua 
                         (IC). S{\~a}o utilizados DCL como t{\'e}cnica de conformidade e 
                         Jenkins como servidor de IC. Isso implica que o processo de 
                         conformidade arquitetural {\'e} ativado a cada 
                         integra{\c{c}}{\~a}o de c{\'o}digo, executando 
                         a{\c{c}}{\~o}es configuradas quando viola{\c{c}}{\~o}es forem 
                         detectadas. Tais a{\c{c}}{\~o}es podem variar desde o envio de 
                         um e-mail de alerta ao bloqueio da integra{\c{c}}{\~a}o do 
                         c{\'o}digo ao reposit{\'o}rio. Al{\'e}m disso, este artigo 
                         reporta uma avalia{\c{c}}{\~a}o controlada e uma 
                         avalia{\c{c}}{\~a}o em um cen{\'a}rio real que demonstram a 
                         aplicabilidade da ferramenta.",
  conference-location = "Maring{\'a}, PR",
      conference-year = "19-23 set.",
                label = "lattes: 3413978291577451 3 PintoFontGuerTerr:2016:FeVeAr",
             language = "pt",
           targetfile = "pinto_arch.pdf",
        urlaccessdate = "27 abr. 2024"
}


Fechar